Linux C++使用libcurl访问http编程

您所在的位置:网站首页 libcurl linux和windows接口一样吗 Linux C++使用libcurl访问http编程

Linux C++使用libcurl访问http编程

2024-07-09 12:13| 来源: 网络整理| 查看: 265

curl 和libcurl 的区别

curl是命令行工具,可以通过shell或脚本来运行curl。curl底层所使用的库是libcurl。  libcurl是一个库,通常与别的程序绑定在一起使用,如命令行工具curl就是封装了libcurl库,libcurl源代码编译完成后会生成curl的可执行文件

 

下载安装libcurl库

首先看下自己有没有安装curl,执行了下curl  www.baidu.com 发现居然可以 找了下这个curl,发现是python2.7里带的,这是个可执行文件,也就是一个命令行工具 但是我们要使用curl来编写程序还是得依靠libcurl,所以还是得下载安装libcurl 库

1.选择安装目录,cd   /usr/local

2.wget https://curl.haxx.se/download/curl-7.53.0.tar.gz

3.tar -vxzf curl-7.53.0.tar.gz 

4.cd   /usr/local/ curl-7.53.0

5.编译安装   ./configure   make   make install

6.查看是否安装成功 curl --version,如图:

进入到默认安装的目录下 /usr/local/bin 中发现有两个可执行文件curl 以及 curl-config,说明安装成功

7.查找curl.h  find  /   -name   curl.h

一般linux的库文件是放在/usr/lib下,而这个头文件是在curl/curl.h 所以用 #include "curl/curl.h" ,经测试,能找到 说明可能在安装过程中上面这两个目录之一被加到环境变量,或者库链接目录中了

 

编译测试libcurl

进入 /usr/local/curl 7.53.0/docs 目录,找到examples 文件夹,进入,其中README 文件详细介绍了 libcurl 示例代码的使用方式:

Most examples should build fine using a command line like this: $ curl-config --cc --cflags --libs -o example example.c  Some compilers don’t like having the arguments in this order but instead want you do reorganize them like: $ curl-config --cc -o example example.c curl-config --cflags --libs

也就是说,只要我们在上一步中成功安装了 curl 以及 curl-config 工具,在这一步中,我们只需要简单的运行这行指令即可自动的指定代码的包含头文件以及库文件信息:

$ `curl-config --cc` -o example example.c `curl-config --cflags --libs`

编译一下 examples 中的 https.c 文件,执行如下命令,如图: `curl-config --cc` -o https https.c `curl-config --cflags --libs` 就可以看到编译成功了https.c,然后可以看到有一个https的可执行文件

执行  ./https

可以看到成功返回可一个html 的内容,然后我们可以借鉴https.c来编写自己的C/C++程序了

https.c:

/*************************************************************************** * _ _ ____ _ * Project ___| | | | _ \| | * / __| | | | |_) | | * | (__| |_| | _


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3